﻿# Autore: Mattia Barrasso

Funzionalità: EliminaIngrediente
# ------ Elementi vincolanti per ingrediente:
# [Fatto] Le intolleranze degli ospiti
# [Fatto] Le ricette in cui figura
# ------ Elementi NON vincolanti per ingrediente:
# [Fatto] Le preferenze degli ospiti
# [Fatto] Le disponibilità nei negozi
# [Fatto] Le categorie a cui appartiene

Scenario: Eliminazione di un ingrediente appartenente a più categorie. Conferma. Successo.
	Dato l'ingrediente Radicchio esiste
	E la categoria "Verdura" esiste
	E la categoria "Verdure da insalata" esiste
	E l'ingrediente "Radicchio" appartiene alla categoria "Verdura"
	E l'ingrediente "Radicchio" appartiene alla categoria "Verdure da insalata"
	E seleziono l'ingrediente Radicchio
	Quando elimino l'ingrediente
	Allora appare un messaggio
	Quando confermo
	Allora l'ingrediente Radicchio non esiste

Scenario: Eliminazione di un ingrediente appartenente a più categorie. Annullamento. Fallimento.
	Dato l'ingrediente Radicchio esiste
	E la categoria "Verdura" esiste
	E la categoria "Verdure da insalata" esiste
	E l'ingrediente "Radicchio" appartiene alla categoria "Verdura"
	E l'ingrediente "Radicchio" appartiene alla categoria "Verdure da insalata"
	E seleziono l'ingrediente Radicchio
	Quando elimino l'ingrediente
	Allora appare un messaggio
	Quando annullo
	Allora l'ingrediente Radicchio esiste

Scenario: Eliminazione di un ingrediente a cui un ospite è intollerante. Fallimento.
	Dato l'ingrediente Radicchio esiste
	E esiste l'ospite "Mario Rossi"
	E l'ospite "Mario Rossi" è intollerante all'ingrediente "Radicchio"
	E seleziono l'ingrediente Radicchio
	Quando elimino l'ingrediente
	Allora appare un messaggio
	Quando accetto
	Allora l'ingrediente Radicchio esiste

Scenario: Eliminazione di un ingrediente preferito da un ospite. Conferma. Successo.
	Dato l'ingrediente Radicchio esiste
	E esiste l'ospite "Mario Rossi"
	E l'ospite "Mario Rossi" preferisce l'ingrediente "Radicchio"
	E seleziono l'ingrediente Radicchio
	Quando elimino l'ingrediente
	Allora appare un messaggio
	Quando confermo
	Allora l'ingrediente Radicchio non esiste

Scenario: Eliminazione di un ingrediente preferito da un ospite. Annullamento. Fallimento.
	Dato l'ingrediente Radicchio esiste
	E esiste l'ospite "Mario Rossi"
	E l'ospite "Mario Rossi" preferisce l'ingrediente "Radicchio"
	E seleziono l'ingrediente Radicchio
	Quando elimino l'ingrediente
	Allora appare un messaggio
	Quando annullo
	Allora l'ingrediente Radicchio esiste

Scenario: Eliminazione di un ingrediente sfruttato nelle ricette, preferenze, intolleranze e categorie. Fallimento.
	Dato l'ingrediente Radicchio esiste
	E esiste l'ospite "Mario Rossi"
	E esiste l'ospite "Luca Rossi"
	E esiste la ricetta Insalatona
	E la categoria "Verdura" esiste
	E la ricetta Insalatona usa l'ingrediente Radicchio
	E l'ospite "Mario Rossi" preferisce l'ingrediente "Radicchio"
	E l'ospite "Luca Rossi" è intollerante all'ingrediente "Radicchio"
	E l'ingrediente "Radicchio" appartiene alla categoria "Verdura"
	E seleziono l'ingrediente Radicchio
	Quando elimino l'ingrediente
	Allora appare un messaggio
	Quando accetto
	Allora l'ingrediente Radicchio esiste

Scenario: Eliminazione di un ingrediente senza legami. Successo.
	Dato l'ingrediente Radicchio esiste
	E seleziono l'ingrediente Radicchio
	Quando elimino l'ingrediente
	Allora appare un messaggio
	Quando confermo
	Allora l'ingrediente Radicchio non esiste

Scenario: Eliminazione di un ingrediente presente in una ricetta.  Fallimento.
	Dato l'ingrediente Radicchio esiste
	E esiste la ricetta Insalatona
	E la ricetta Insalatona usa l'ingrediente Radicchio
	E seleziono l'ingrediente Radicchio
	Quando elimino l'ingrediente
	Allora l'operazione non ha successo
	E l'ingrediente Radicchio esiste

Scenario: Eliminazione di un ingrediente reperibile in un negozio, conferma. Successo.
	Dato l'ingrediente Radicchio esiste
	E esiste il negozio Coop
	E il negozio Coop fornisce l'ingrediente Radicchio
	E seleziono l'ingrediente Radicchio
	Quando elimino l'ingrediente
	Allora appare un messaggio
	Quando confermo
	Allora l'ingrediente Radicchio non esiste

Scenario: Eliminazione di un ingrediente reperibile in un negozio, annullamento. Successo.
	Dato l'ingrediente Radicchio esiste
	E esiste il negozio Coop
	E il negozio Coop fornisce l'ingrediente Radicchio
	E seleziono l'ingrediente Radicchio
	Quando elimino l'ingrediente
	Allora appare un messaggio
	Quando annullo
	Allora l'ingrediente Radicchio esiste

Scenario: Eliminazione di un ingrediente presente in una ricetta e in un negozio. Fallimento.
	Dato l'ingrediente Radicchio esiste
	E esiste la ricetta Insalatona
	E la ricetta Insalatona usa l'ingrediente Radicchio
	E esiste il negozio Coop
	E il negozio Coop fornisce l'ingrediente Radicchio
	E seleziono l'ingrediente Radicchio
	Quando elimino l'ingrediente
	Allora l'operazione non ha successo
	E l'ingrediente Radicchio esiste